HSPDA provides high speed downlink access from an UMTS base station (Node B) to a plurality of user entities by flexible allocation of downlink resources.
In prior art document WO2005/034418 FIG. 3, the protocol layers involved in the communication between user entity (e.g. mobile station), Node B (base station), RNC (implemented by parts CRNC, and SRNC) are shown. The user entity involves the following layers: PHY (physical layer), MAC-hs (HSPDA Media Access Control layer), MAC_d (Medium Access Control Device) RLC (Radio Link Control layer). Node B communicates via the MAC-hs layer with the user entity and via a frame protocol HS_DSCH-FP with the RNC, respectively.
According to the HSPDA specifications, the RLC operates above the MAC-hs protocol in the protocol stack. The RLC layer provides the connection to upper communication layers such as TCP/IP, both in the user entity and the RNC. Both the RLC protocol and the MAC-hs protocol are ARQ (Automatic Repeat Request) protocols featuring retransmissions of incorrectly received protocol data units.
As the name implies, the High Speed Downlink Packet Access (HSDPA) technology provides substantial data capacity advantages. The technical specification 3GPP TS 25.321 concerns the MAC (Media Access Control) architecture and the various entities from a functional point of view. 3GPP 25.211 basically describes how information from the MAC-layers is mapped onto the channels sent out on the air.
In contrast with release 99 (GSM/EDGE) which exclusively defines channels between the RNC and the UE, HSPDA introduced the HS-DSCH (High Speed Dedicated Shared Channel) channel which is terminated between the user entity and the base station set (NODE B) also denoted Node B. The HSPDA Medium Access Control (MAC-hs) enables increased packet data throughput due to link adaptation (Adaptive Modulation Coding—i.e. 16QAM or QPSK) and fast physical layer retransmission combining. Hence, besides incorporating the WCDMA access technology, Node B carries out scheduling and Hybrid Automatic Repeat Request (H-ARQ) retransmissions on the channel between the user entity and Node B. The benefits and the features of the above system have for instance been described in “WCDMA evolved—High Speed packet data services”, by Stefan Parkwall et al., Ericsson review No. 2, 2003.
The HSPDA transmission makes use of a 2 ms transmission time interval (three time slots).
On the downlink side, see FIG. 1, there is provided: Several common data channels 1, a Downlink Physical Channel (DPCH-R99) dedicated signal radio bearer 2 for each user entity using HSPDA transmissions; a common High Speed Shared Control Channel (HS-SCCH) for control signalling 3, a number of High Speed-Physical Downlink Shared Channels (HS-PDSCH) common user data channels 4-5, which are allocated HSPDA data in a flexible manner.
On the uplink side, see also FIG. 1, there is provided: a High Speed-Dedicated Physical Control Channel (HS-PDCCH) 6—for, among other things, providing channel quality information, CQI, and HSPDA automatic request signalling—and an uplink dedicated channel associated with each HSPDA user comprising control information and data, 7.
HSDPA (High Speed Downlink Packet Access) facilitates high speed transmission on the downlink from Node-B and to the user entity (UE). Under HSPDA, Node-B buffers incoming downlink end-user data and utilises an internal scheduling entity to determine on which particular channel and when to transmit buffered data according to a scheduling routine. To aim in the scheduling decision, Node-B continuously receives channel quality estimates from the UE entities. Node-B also has knowledge about UE receive capabilities.
Node-B can transmit MAC-hs PDUs (Media Access Control High Speed Protocol Data Units) to the UEs at a pace of up to 500 times per second. At each 2 ms transmit opportunity (TTI transmit time interval) Node-B can vary the MAC-hs PDU size depending on the buffered amount of data, the channel quality estimates, the UE capabilities and the granted amount of downlink codes available. MAC-hs data for 1 UE up to 4 UEs can be scheduled at each 2 ms transmit opportunity utilising code division (WCDMA) among the scheduled UEs.
The UE decodes the HS-SCCH (High Speed Shared Control Channel), and upon a successful CRC checksum the UE continues to decode the HS-PDSCH (High Speed Physical Data Shared Channel). Depending on the outcome of the HS-SCCH and HS-PDSCH, the UE transmits a reception feedback back to the peer Node-B.
The reception feedback is interpreted by the Node-B transmitter, which upon a negative feedback or absence of feedback (DTX) indicating a possible reception failure for the UE, retransmits data.
According to specification 3GPP 25.321 chapter 11.6.1 and 11.6.2, there is utilized a HSPDA N-channel stop and wait (SAW) ARQ, implying that a number of 1-8 HARQ processes may exist at a time per user entity. The timing relation between the downlink HS-DPCCH channel and the uplink ACK/NACK transmissions on the HS-PDSCH are fixed, that is, the ACK, NACK messages are arranged to be transmitted, such that there are always 7.5-9.5 TTI slots between a transmission and the associated expected ACK/NACK from a user entity. This allows for Node-B to easily determine when to retransmit data in the case of a missing response to a first transmission. The 8 HARQ processes mentioned above reassure that Node-B may always utilise a subsequent DPCH slot for transmission to a specific UE either with a retransmission of previously sent MAC-hs data, or for a new MAC-hs transmission.
Base Station and User Entity
In FIGS. 5 and 6, diagram of a base station set (Node B) and a user entity (UE), respectively, are shown.
The base station set, node B, 50, comprises a scheduler, 52, a number of input buffers, 53, 54, storing segments of data streams pertaining to individual user entities, UE1-UEn. For each UE a HARQ entity 55, 56 each comprising a number of HARQ processes for handling simultaneous transmissions to several UE's, that is, for each user entity as well, Layer 1 processing means 57 for transferring data from respective HARQ processes. The base station moreover comprises a CQI decoder, 58, a user entity (UE) feedback decoder 59 and a layer 1 receiver, 60.
Each HARQ process 55, 56, in a given user entity is mirrored in Node B, and corresponds to a given data stream which is received by a particular user entity. As explained above, more data streams may be used by the user simultaneously corresponding to one application or more simultaneous applications running on the user entity apparatus, possibly with different QoS requirements. Moreover, consecutive data may be transmitted for the same user entity, the consecutive transmission belonging to different HARQ processes.
Moreover, Node B comprises at least one specific input buffer queue dedicated to a corresponding set of HARQ processes.
In FIG. 6, a user entity (MAC) 30 arrangement according to the invention is shown comprising HS-SCCH decoding means, 33, for decoding the downlink HD-PDSCH channel, arrangements consisting of a number J of HARQ processes, 36, a number M of reordering and disassembly queues, 39, and a RLC (Radio Link Control) layer means 31. Moreover, there is provided UE (User Entity) feedback processing means, 38, and layer 1 processing, 37, for providing feed-back on the HS-DPCCH channel. Finally buffer means 35 are provided for each HARQ process 36. The buffer means may be arranged as one resource or buffer 35 a plurality of resources or buffers. The buffer may be arranged as a soft memory which is partitioned across the HARQ processes in a semistatic fashion through upper layer signalling. Node B should take into account the UE soft memory capability when selecting transport formats for transmission and retrans-mission and selecting redundancy versions.
The reordering queue distribution function, 39, routes the MAC-hs PDU's to the correct reordering buffer based on a Queue ID. The reordering entity reorders received MAC-hs PDU's according to the received TSN (transmit sequence number). MAC-hs PDU's with ascending TSN's (MAC hs Transmit Sequence Numbers) are delivered to the disassembly function. To recover from erroneous conditions when MAC-hs PDU are missing the same avoidance handling as described in 3GPP TS 25.321-11.6.2, re-ordering release timer and window based stall avoidance, is used. There is one reordering entity for each Queue ID configured at the UE. The disassembly entity is responsible for the disassembly of MAC-hs PDU's. When a MAC-hd header is removed, the MAC-d PDU's are extracted and any padding bits are removed. Then the MAC-d PDUs are delivered to the higher (RLC) layer. These features have been described in 3GPP TS 25.321-11.6.2.3.
The RLC Layer
The RLC layer in 3GPP can operate in three modes, transparent mode, unacknowledged mode and acknowledged mode (AM), which will be focused upon in the following.
In AM mode, incorrectly received PDU's (Protocol Data Units) discovered by the receiving side are effected to be retransmitted by the transmitting side by means of an ARQ (Automatic Repeat Request) protocol.
An AM RLC entity consists of a transmitting side, and a receiving side, where the transmitting side of the AM RLC entity transmits RLC PDU's and the receiving side of the AM RLC entity receives RLC PDU's.
An AM RLC entity resides in the UE (user equipment) and in the RNC (radio network control), respectively. The transmitting side segments and/or concatenates RLC SDU's (service data units) into PDU's of a fixed length. The receiving side reassembles received PDU's into RLC SDU's and transmits these to higher data layers. Likewise, SDU's are received from the layer above the RLC layer. In AM mode, the RLC layer is responsible for the delivery of SDU's in consecutive order.
In FIG. 4 of the above document WO2005/034418, an implementation of the acknowledged mode (AM) UE (base station)/UTRAN (Radio access node/base station (Node B)) entity is shown.
To facilitate the in-sequence delivery, each RLC PDU is given a sequence number, 0-4095, whereby the transmitter transmits PDU's with increasing sequence number modulo 4096. Using the sequence number, the receiver can detect a missing PDU. The receiver can be configured to transmit a STATUS message upon the detection of a missing PDU. The STATUS report may contain positive or negative acknowledgement of individual RLC PDU's received by the peer RLC entity. The transmitter can also request a STATUS messages from the receiver by setting a Poll flag in the PDU header. The conditions for that the transmitter sets the Poll flag are among others:                Last PDU in Buffer:        
When only one PDU exists in the input buffer.                Poll Timer Expires:        
When the timer_poll expires, that is, the transmitter requested a STATUS earlier and initiated a timer_poll to reassure that a response is received.                Window Based Setting:        
A transmitter is restricted in the amount of “outstanding data” it can transmit until a STATUS confirms the reception to the receiving side. “Outstanding data” relates to the earliest unacknowledged PDU.
It should be noted that the above description of the functionality of the RLC layer only constitutes a small excerpt of those features actually provided.
Selective retransmissions are possible, e.g. if STATUS message indicates PDU with sequence number (SN) 3, 6 and 13 are missing, only 3, 6 and 13 needs to be retransmitted.
MAC-hs Layer
In the following description regarding the MAC-hs layer:                the MAC-hs transmitter is the Node-B.        the MAC-hs receiver is the UE equipment being either a mobile station or a pc-card attached to a PC or any other equipment capable of receiving downlink 3GPP HSDPA traffic.        
MAC-hs PDU's are numbered by modulo TSN (Transport Sequence Number) cycling through the field 0 to 63.
As mentioned above, the MAC-hs protocol provides multiple Hybrid-ARQ processes (HARQ) whereby for each HARQ process, the transmitter transmits a MAC-hs PDU and awaits either an ACK indicative of reception at the receiver or Negative Acknowledgement (NACK) indicative that the receiver did not receive the MAC-hs PDU or absence of a response (DTX). The round trip time concerning the time from MAC-hs PDU transmission until reception of the feedback (ACK/NACK) is fixed. Upon the reception of a NACK or DTX, the MAC-hs transmitter retransmits the MAC-hs PDU. Since the round trip time is long in relation to the MAC-HS PDU size and since multiple users may be adapted to receive packets in time multiplexed fashion, multiple HARQ processes are provided. If only one HARQ process was available, the duty cycle (i.e. actual transmission time/total possible transmission time) would be low. By using multiple HARQ processes, one HARQ process can await a response, while another HARQ process, or multiple HARQ processes, may transmit. Thereby, the duty cycle can be rendered close to 100 percent.
The MAC-hs protocol is semi-reliable, that is, the MAC-hs transmitter may choose to discard or delete a MAC-hs PDU that has been transmitted and possibly been retransmitted to the MAC-hs receiver.
By discarding a MAC-hs for retransmission, unnecessary transmissions are prevented over the radio link in case the MAC-hs receiver has moved to another cell or has powered down or if the receiver for any other reason is not capable of receiving data. Therefore, buffered packets are discarded at the transmitter either at the expiry of a timer set at a predetermined time (e.g. T1) corresponding to the first transmission of the packet in question or when a maximum number of retransmissions of the packet in question have been performed or based upon a too long waiting time in the input data buffer, whatever appears first or a combination thereof.
The MAC-hs receiver utilizes a receiver window for the purpose of mitigating the effect of unnecessary transmissions when PDU's are received in non-ascending sequence order (which can occur due to retransmissions). Whenever a MAC-hs PDU is successfully received with a TSN (Transmit Sequence Number) equal to the next expected TSN, the receiver can deliver PDU's to the RLC layer. Depending on whether the subsequent TSN number (i.e. next expected TSN+1) has previously been successfully received, that MAC-hs PDU can also be delivered and so forth. The receiver window is updated accordingly. Delivery to the RLC layer from the MAC-hs protocol is done in consecutive order also denoted in-sequence.
To recover from the situation where e.g. the transmitter has discarded a MAC-hs PDU, the receiver utilizes two mechanisms I)+II) to solve the problem:
I) Timer Based Stall Avoidance:
At the reception of a PDU with TSN>next_expected_TSN the receiver starts a timer denoted T1. When the timer expires, the receiver makes proper actions to allow for subsequent PDU's to be received. The exact details are described in 3GPP 25.321 Chapter 11.6.2.3.2. The behavior is shown in FIG. 2.    At time 1) a PDU with TSN=4 is received, the next expected transmit sequence number being 3, whereby timer T1 starts.    At time 2) PDU's with TSN 6 and 7 are received.    At time 3), the timer expires, whereby TSN=4 is delivered to the RLC layer. Next expected_TSN=5. A new timer T1 starts since next_expected_TSN=5 is not received and at least one PDU exists in receiver window.    4) TSN 6 and 7 remains in buffer.II) Window Based Stall Avoidance:
Upon the reception of a PDU with TSN outside the receiver window, the receiver shall shift its “right” (or “upper”) window edge and highest_received_TSN to the received TSN. Next_expected_TSN shall be updated to highest_received_TSN-receiver window size+1 previously PDU's stored in window that now fall outside the window shall be delivered to RLC layer. This has been illustrated in FIG. 3.
Assume that the receiver window size is of length 8.    At time 1) PDU TSN 4 has been received, which is within the receiver window, TSN=3 is next_expected_TSN, timer T1 is running.    At time 2) TSN=12 is received, which is outside the receiver window thus causing the window to advance, the next_expected_TSN is updated, and PDU TSN=4 is delivered to RLC. A new timer T1 starts since next_expected_TSN is not received and a PDU exists in the receiver window.Further Features of the MAC Layer:MAC-hs reset:
MAC-hs is used to restart the MAC-hs protocol, where the MAC-hs receiver delivers stored data in its receiver window to RLC layer and sets its next_expected_TSN=0 and highest_received_TSN=63. It is used upon conditions such as handover between cells.
UE Addressing in HS-SCCH:
A UE ID (In 3GPP denoted Radio Network Temporary Identifier (RNTI)) that identifies the UE for which the HS-SCCH information is intended is implicitly included in the CRC (Cyclic Redundancy Check). When generating the CRC checksum in Node-B, the UE ID is included in the calculation. Upon reception of a HS-SCCH a UE utilizes its ID in the calculation of the CRC to check whether HSDPA data is destined to the UE.
HS-SCCH Content:
The HS-SCCH has the following content:    Transport-Format and Resource-related-Information (TFRI)    HARQ ARQ-related information such as,            HARQ process number        Redundancy version (RV)        New-Data-Indicator (NDI)MAC-hs Header Content:        
In FIG. 4, a MAC-hs transmission to one HARQ process queue ID, with sequence number TSN, and k different SID (Size Index Identifier) are shown. Either the transmission comprises k different SIDs or less than k if the transmission order is ‘first SID followed by second SID followed by first SID again and so forth’.
Using multiple SID is a mechanism by which higher layer can utilise one single MAC-hs queue for transmission of several higher layer priority queues, each of which has a specific SID.
Incremental redundancy is used by HSDPA, whereby each HARQ process buffers previously unsuccessfully received data. The stored information is utilized in a cyclic redundancy check (CRC) process wherein the stored information and the recent information are combined before being fed to the decoded of the error-correction code so as to resolve data transmitted over multiple occasions. Chase combining is considered to be a particular case of Incremental Redundancy. To support the Incremental Redundancy combining scheme, the Redundancy Version (RV) is signaled in the HS-SCCH. This process has been described further in 3GPP 25.214. When successfully decoding data, a positive cyclic redundancy check value is formed indicating that data has been correctly received. Which particular retransmission method to use is fully determined by the Node-B and is indicated to the UE via the RV in each HS-SCCH in each TTI.
The new data indicator flag according to 3GPP 25.321 is used by Node B as an indication for the user entity. According to 3GPP the conditions for operating the NDI is specified as follows:                The HARQ process sets the New Data Indicator (NDI) in transmitted MAC-hs PDUs. UTRAN should:                    set the New Data Indicator to the value “0” for the first MAC-hs PDU transmitted by a HARQ process;            not increment the New Data Indicator for retransmissions of a MAC-hs PDU;            increment the New Data Indicator with one for each transmitted MAC-hs PDU containing new data.                        
According to 3GPP 25.321 it is noted that the scheduler may re-use TSNs by toggling the NDI bit in order to resume pre-empted transmissions or to force the UE to flush the soft buffer. In this case the content of the payload may be changed but care should be taken to preserve the higher layer data order.
3GPP does not specify the HARQ process behavior upon a successful decoding of MAC-hs, which opens up for two possible alternatives for a UE manufacturer:
To flush, i.e. to delete, the stored HARQ process information (UE behavior 1).
The benefit of this behavior is that the HARQ process can be independent of the NDI setting in subsequent MAC-hs transmission, i.e. to accept both an incremented and a non-incremented NDI.
The drawback of this behavior will occur when the acknowledgement transmitted back to the Node-B fails, and Node-B retransmits the MAC-hs transmission. Note that the MAC-hs has already been delivered to the reordering entity so that is not a problem, but the problem lies in the fact that unnecessary MAC-hs transmissions may occur and an increased risk of stalling the Node-b sender.
To store the HARQ process information (UE behaviour 2).
To store the HARQ process information will mitigate the effect of the behavior (UE behavior 2) above when a Node-B fails to decode a transmitted ACK. In the following it is assumed that the prior art user entities stores buffer information until for example an NDI indication is received.